package main

import "fmt"

func main() {
	// fmt.Println("Hello, world!")
	// fmt.Print("Hello, world!\n")
	// fmt.Printf("Hello, %s!\n", "world")

	// Print Println区别

	// 1、 Println会自动换行，而Print不会自动换行
	// fmt.Print("Hello, world!\n")
	// fmt.Println("Hello, world!")

	// 2、一次输出多个值的时候 Println会自动添加空格，而Print不会自动添加空格
	// fmt.Print("A", "B", "C\n")
	// fmt.Println("D", "E", "F")

	// Print和Printf区别

	// 1、Print可以输出任意类型，而Printf只能输出字符串
	// var a = "小皮皮"

	// fmt.Print(a)
	// fmt.Printf("%v", a)

	// 2、Print可以输出多个值，而Printf只能输出一个值
	// a := 10
	// b := 20
	// c := 30
	// fmt.Print("a=", a, "b=", b, "c=", c, "\n")
	// fmt.Printf("a=%v b=%v c=%v\n", a, b, c)

	// 类型推导方式定义遍历
	a := 10
	b := 20
	c := 30
	fmt.Printf("a=%v b=%v c=%v\n", a, b, c)

	// 使用Printf打印一个变量的类型和值
	fmt.Printf("a=%v a的类型是%T\n", a, a)
}
